Datomicの始め方
概要
おもしろデータベース Datomic 事始め
インフラストラクチャーを見ているだけでもかなり驚きと思いっきりにあふれたDatomic。
http://docs.datomic.com/architecture.html
公式サイトには「動かしながら学べる」感じのリファレンスがあるので、
http://docs.datomic.com/getting-started.html
はじめにこれをやってみよう的な。
DL
DatomicにはFree版とPro版があり、Free版は下記からDLできる。
http://downloads.datomic.com/free.html
in-memory dbを動かす
shell起動
bin/shell
in-memory dbのドメインを切る
uri = "datomic:mem://hello";
dbを作る
Peer.createDatabase(uri);
Peerっていうのは、インターフェースみたいなもの。
connectionを作成
conn = Peer.connect(uri);
→
<datomic.peer.LocalConnection@473fae05>
データを作成、次に追加を行う。
datom = Util.list("db/add",
Peer.tempid("db.part/user"),
"db/doc",
"hello world");
データを追加
response = conn.transact(Util.list(datom));
データベースを取得
db = conn.db();
クエリを打ってみる → cb/docプロパティの値が"hello world"なentity を取得する
Peer.q("[:find ?entity :where [?entity :db/doc \"hello world\"]]", db);
→
<[[17592186045417]]>
値が返ってきた。
続く